<?php

namespace common\service;

/**
 * Description of WorksService
 *
 * @author Administrator
 */
class WorksService {
    //作品保存
    public static function worksSave(){
        
    }
    
    public function Test(){
        $model = new Goods();
        $model->setScenario('insert');
        if ($model->load(Yii::$app->request->post())) {
            $transaction = Yii::$app->db->beginTransaction();
            try {
                if (!$model->save(false)) {
                    throw new \Exception('商品添加失败！');
                }

                $filename = Yii::getAlias(Yii::$app->params['goods.coverPath']) . DIRECTORY_SEPARATOR . $model->cover;
                if (!$model->image->saveAs($filename)) {
                    throw new \Exception('封面图片添加失败！');
                }

                // 记录商品库存
                $goodsSurplus = new GoodsSurplus();
                $goodsSurplus->goods_id = $model->id;
                $goodsSurplus->surplus_before = 0;
                $goodsSurplus->amount = $model->surplus;
                $goodsSurplus->surplus_after = $model->surplus;
                $goodsSurplus->remark = '初始化库存。';

                if (!$goodsSurplus->save(false)) {
                    throw new \Exception('商品库存记录失败！');
                }

                $transaction->commit();
                Yii::$app->session->setFlash('success', '成功添加商品“'.$model->name.'”。');
                return $this->refresh();
            } catch (\Exception $e) {
                $transaction->rollBack();
                Yii::$app->session->setFlash('danger', $e->getMessage());
            }
        }
    }
}
